Introduction

Election forecasting is of great interest to many people. Politicians might use it to adjust campaign strategies, economists might use it to predict how markets will react, and citizens might use it to decide whether to vote. Many polls are carried out in an attempt to predict the winner of an election, however these polls often don't capture the whole picture. Polls can be biased, they can change over time, and perhaps most importantly, they don't always reveal who will show up to vote on election day. In order to have a more accurate election prediction model, voter turnout is a critical factor to consider. For example, if one candidate is predicted to win by a large margin in the polls, that might cause some people not to show up to vote on election day. Additionally, some polls include people who might not actually be registered to vote.

In this report, we seek to build a comprehensive model predicting who votes, specifically in the state of North Carolina. First, we will cover a brief literature review of other voter turnout models that have been constructed in the past. Next, we will discuss the data used to build our models. After that, we will walk through the construction of our model, and we will discuss our results.

Literature Review

Previous studies have examined different ways of estimating who votes, but there does not appear to be any general consensus in the best way of modeling this. In one study (Wislek), the author attempts to predict voter turnout rates based on an area's violent crime rate, number of US House Representatives, and several other political factors. However, this data is examined at the state level, so there might be differences across counties that aren't being captured.

Another paper by Challenor states the importance of likely voter models in election forecasting, and goes onto predict voter turnout based on US Census questions. They compared several models, the best of which had 87.82% accuracy, and determined that the features most correlated with voting included education level, marital status, and major job industry, while the variables with least correlated with voting were marital status based on armed forces participation, intermediate job industry, and age.

In Grofman's paper, "Models of voter turnout: a brief idiosyncratic review," he examines many old studies about voting models, and some date back to as early as 1957. He says that the two main schools of thought in voter prediction modeling are predicting turnout in terms of demographic or attitudinal factors and the other is estimating voter turnout by thinking of voting as a "rational choice calculus" where citizens estimate the costs and benefits of voting. In the end, he determines that both methods produce similar results: it is very hard to explain which individuals will vote or not, but models have found more success in predicting which categories of people vote depending on group characteristics and the election.

Data

Several data sources were used to build the model. To start, we used information from the North Carolina voter registration database. The first dataset from this source was a file containing all registered voters in North Carolina. Each row represents an individual, and we also have their current voter status, the county they live in, the day they registered to vote, what political party they're a member of, as well as other demographic information like race, ethnicity, gender, and age. The second dataset from this source contained actual voting records from the 2016 and 2018 elections. Each row represents a vote, and includes other information like county, voter registration number, election, voting method, which party was voted for, and the precinct.

To engineer an appropriate data set relevant to the research goals, we first merged both data sets together using the voting registration numbers to have a collective dataset with all the predictors relevant to the study. We then modified the ages of voters from their specific ages to age groups, so as to align with other census data, and allow for better interpretability of this predictor when performing model analysis. The dataset from the Census was recoded in general to fit the dataset containing registered voters that included extensive transfiguring. Finally, we grouped the data into different groups based on our factored predictors, resulting in a dataset with 30673 rows and 7 columns. Details of the predictor variables are described in Table 1.1.

Table 1.1 Description Table of Data set variables
Metric Groups
n Number of voters
race A = Asian, B = Black or African American, I = American Indian or Native American,
M = Two or more races , O = Other , U = Undesignated, W = White
gender M = Male, F = Female, U = Preferred not to respond
ethnicity HL = Hispanic or Latino, NL = Non-hispanic/Non-Latino, UN = Undesignated
age group Age groups of 18-24, 25-44, 45-64, 65+
county North Carolina's 100 counties
election date Election dates of 11/06/2018, 11/08/2016

Performing explanatory data analysis on the data set, we noted that there are unequal representation of certain groups within each predictor variables. Figures 1.1-1.4 show histograms of the counts of observations in terms of age group, race, ethnicity and gender. From these plots, we can observe that the majority of the observations that represent voters disproportionately identify their race as white, or identify their ethnicity as HL. We have slightly more female voters than male voters with little representation outside of these two specified genders, as well as having most of the voters between the ages of 45-64.

Model

To build the model that predicts who votes specifically in the state of North Carolina, our approach involved using a binomial multi-level model to predict the number of voters based on groups in our predictor variables. We fit a logistic regression model with the response variable being the number of people who voted, and the predictor variables being race, ethnicity, election date (2016 and 2018), gender and county, with all predictors being factor variables.

The model for race \(i\), ethnicity \(j\), election date \(k\), gender \(l\),county \(m\) and age group \(q\) to predict the number of people who voted \(n_{voting,ijklm}\) can be written in statistical notation as:

\[ \begin{aligned} n_{voting,ijklq} \sim Binomial(n_{ijklq}, p_{ijklq}) \\ \\ logit(p_{ijklq}) = \alpha_{county} + \sum_{i = 1}^{7} \beta_i * race_i + \sum_{j=8}^{10} \beta_j* ethnicity_j + \beta_{11} * electiondate_k \\ + \sum_{l=12}^{14} \beta_l * gender_l + \sum_{q=15}^{18} \beta_q * agegroup_q\\ + \sum_{r = 19}^{89} \beta_r *\text{(all two-way interactions, excluding electiondate)} \\ \alpha \sim N(0,0.1) , \beta_b \sim N(0,0.1) \end{aligned} \]

The binomial variable is modeled as the number of people voting in any given group, as compared to the number of registered voters in that group.(\(p\) modeling the proportion of registered voters in that group who actually voted.) The probabilities \(p\) are based around this ratio. We believe North Carolina Census totals would be a better representation than number of registered voters in 2008-2018. However, we found inconsistencies in the data; when we compared Census totals to voter totals for a given year, we found some groups had much larger than 100% voter turnout. While this could be due to any number of factors, most of the groups with such inconsistencies were in the 18-24 or 25-44 age brackets, which could imply that numbers are thrown off by a large population of college students who vote in North Carolina but who are accounted for elsewhere in the census.

As a start, we are using N(0,0.1) for all intercepts and coefficients with prior motivations being the intuitive expectation for various factors to have equal effects on whether someone votes or not. Furthermore, in order to estimate the number of people who voted as a binomial probability, we give a number of "trials" using the number of registered voters in those groups as that number. This is so the predicted probabilities obtained from the model accurately reflect the proportion of registered voters who are actually voting. The baseline for our model predicts the number of people voting in the 2018 mid-term election that are white, female, non-Hispanic and in the age group of 18-24.

Validation

Given the motivation for our model is interpretation, predictive accuracy is less important than overall model fit. To demonstrate the effectiveness of our model in fitting the data, residual plots are shown. A plot of actual versus predicted values of number voting per group shows an almost perfect linear association, indicating that the model's predictions were generally accurate. A plot of residuals versus predicted values is centered at zero, and with generally equal numbers of positive and negative residuals. The variance seems to increase as group populations increase, but as a percentage of population, these residuals are not indicative of a serious poor fit, as per the linear trend in actual versus predicted values. A histogram of residuals shows normality, centered at zero.

Posterior predictive charts are shown, demonstrating that the distribution of actual values matches distribution of posterior samples relatively well, and that average predicted error tends to be close to zero, deviating primarily where populations are large. Leave-one-out cross validation estimates were computed on the model using the loo package as well. This indicated a poor model specification with a value of the effective number of parameters much greater than the true number of parameters (3010 vs. 89). However, there is room for doubt that this indicates a poor fit, given the effectiveness shown in the residual plots. We speculate that leave-one-out cross validation may not be a good metric for evaluation with 30,000 rows of data. We began evaluating the model using an approximation to 10-fold cross validation instead. Though results are not ready for this submission, they will be included in subsequent submissions.

Sensitivity Analysis

In addition to our model built using a prior variance of 0.1 for all coefficients, we also built a model with variance of 0.001 for comparison. A third model, with prior variances 0.01, was also created, but did not finish running in time for proper comparison with the other models.

Comparing the model with 0.1 variance to the model with 0.001 variance, the coefficients in the latter model were understandably all very close to zero. To determine which model better fit the data, we used the loo package to estimate leave-one-out cross validation error based on the posterior samples generated in brms. This specification outputs a value representing the difference in expected log pointwise predictive density between the two models. If this value has a high magnitude, it indicates that one model has significantly outperformed the other in estimated leave-one-out cross validation. The value came out to -405534, indicating that the model with variance 0.1 provided a substantially better fit than the model with stronger priors.

Additionally, posterior predictive checks show the average prediction error of the model with stronger priors tends to be less accurate than that of the primary model. Both models also seemed to display good mixing behavior, and the traceplots can be seen in the Appendix.

Posterior predictive checks on average predictive error. Left is model with 0.1 variance, right is model with 0.001 variance priors.Posterior predictive checks on average predictive error. Left is model with 0.1 variance, right is model with 0.001 variance priors.

Posterior predictive checks on average predictive error. Left is model with 0.1 variance, right is model with 0.001 variance priors.

Results

When controlling for county as a random effect, we estimate the odds that a white, female, non-Hispanic female between the ages of 18-24 in North Carolina voted in the 2018 mid-term election is 0.2893842. There are 100 different intercepts for the 100 counties in North Carolina, and these estimates have a standard deviation of 0.14.

Holding all else constant, we estimate that the odds a given person voted in the 2016 election to be multiplied by a factor of 1.7160069 than the odds they voted in the 2018 mid-term elections. It makes intuitive sense that the odds of voting in 2016 are higher, since it seems that more people tend to vote in presidential elections. This also suggests that using 2016 voting estimates could help us better determine voter turnout in 2020, since this is also a big presidential election.

When examining gender effects, the odds that someone who identifies as male votes are 0.9323938 times the odds that someone who identifies as female votes, holding all else constant. This suggests that women are more likely to vote than men. Additionally, people who did not specify their gender when registering to vote are 1.4918247 times more likely to vote than females, holding all else constant.

Everything else held constant, the odds that someone votes given they are black is 1.0100502 times the odds someone votes given they are white. If a person is Asian, American Indian, Multi-race, or something other, their respective odds of voting relative to someone white multiply by 0.9048374, 0.7788008, 1.1388284, and 0.6636503 respectively, holding all else constant. Lastly, for people who did not specify their race, their odds of voting are, holding all else constant, 0.5945205 times the odds of someone white voting.

In terms of ethnicity, the odds that someone votes given they are Hispanic or Latino is 0.9512294 times the odds of voting for someone who is not Hispanic or Latino, holding all else constant, and the odds of voting for someone who did not specify ethnicity are 0.9801987 times the odds of someone who is reportedly not Hispanic or Latino.

Finally, we examine the effect of age on odds of voting. Holding all other variables constant, the odds of voting seems to increase with age until one reaches 65, then it decreases a bit. Specifically, the odds of voting for someone between the ages of 25 and 44 is 2.5092904 times the odds of someone from 18-24 voting, the odds of voting for someone between the ages of 45 and 64 is 5.7546027 times the odds of someone from 18-24 voting, and the odds of voting for someone over 65 is 4.7588212 times the odds of someone from 18-24 voting.

All that being said, our model also includes lots of interaction effects. This means that the odds of voting vary differently depending on all the levels of our predictors. For example, our lowest interaction effect occurs when race and gender are both unspecified. This means that as we hold age, ethnicity, and election constant, we expect the odds of a person of unspecified race and gender's odds to multiply by an additional 0.6187834, or by a total of 0.5488116 times the odds of a white female voting. One of our highest interaction effects occurs when gender is unspecified and when ethnicity is Hispanic or Latino. This means that as we hold age, race, and election constant, we expect the odds of a person of unspecified race and gender's odds to multiply by an additional 1.9155408, or by a total of 2.7182818 times the odds of a white female voting.

For a full list of our model coefficients, please see the appendix.

Discussion

Our model strives to predict voter turnout across different racial, ethnic, gender, and age groups. We chose to examine turnout at the group level, since previous literature stated that predicting whether or not an individual votes has not been very successful in the past. One of the major limitations in our model is due to the nature of the North Carolina voter registration data. Our file of registered voters included people who registered after the 2016 election, which means they would not have been able to vote then. Additionally, it omits people who haven't voted since 2008. For the 2020 election, there has been increased effort urging more and more people to vote, so it is possible that some of these overlooked people might decide to vote again. Also, on that same note, our model looks at the odds of voting in the 2016 presidential election and the 2018 midterm election. We are basing our predictions of voters in the 2020 election off of these past voter totals, but there could be something systematically different about this election that is not being captured in our model due to the use of past data. Further research could seek to make use of data from more sources, for example socio-economic status and education level. The inclusion of more predictors might improve our model fit.

Citations

Can Likely U.S. Voter Models Be Improved? (2020, May 30). Retrieved October 22, 2020, from https://www.pewresearch.org/methods/2016/01/07/comparing-the-results-of-different-likely-voter-models/

Challenor, T. (2017, December 15). Predicting Votes From Census Data. Retrieved October 22, 2020, from http://cs229.stanford.edu/proj2017/final-reports/5232542.pdf

Grofman, B. (1983). Models of Voter Turnout: A Brief Idiosyncratic Review: A Comment. Public Choice, 41(1), 55-61. doi:https://www.jstor.org/stable/30024032?seq=1#metadata_info_tab_contents

Wislek, J. (n.d.). Predicting Voter Turnout. Retrieved October 22, 2020, from https://scholar.valpo.edu/cgi/viewcontent.cgi?article=1906&context=cus

Appendix

Full Model Output

##  Family: binomial 
##   Links: mu = logit 
## Formula: n | trials(n_registered) ~ 1 + race_code + gender_code + ethnic_code + election_lbl + age_group + race_code:gender_code + race_code:ethnic_code + race_code:election_lbl + race_code:age_group + gender_code:ethnic_code + gender_code:election_lbl + gender_code:age_group + ethnic_code:election_lbl + ethnic_code:age_group + election_lbl:age_group + (1 | county_desc) 
##    Data: modeling_data (Number of observations: 30673) 
## Samples: 2 chains, each with iter = 2500; warmup = 500; thin = 1;
##          total post-warmup samples = 4000
## 
## Group-Level Effects: 
## ~county_desc (Number of levels: 100) 
##               Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
## sd(Intercept)     0.14      0.01     0.12     0.16 1.00      257      578
## 
## Population-Level Effects: 
##                                       Estimate Est.Error l-95% CI u-95% CI Rhat
## Intercept                                -1.24      0.01    -1.27    -1.22 1.03
## race_codeA                               -0.10      0.01    -0.13    -0.08 1.00
## race_codeB                                0.01      0.00     0.00     0.02 1.00
## race_codeI                               -0.25      0.02    -0.29    -0.21 1.00
## race_codeM                                0.13      0.02     0.10     0.16 1.00
## race_codeO                               -0.41      0.01    -0.43    -0.39 1.00
## race_codeU                               -0.52      0.01    -0.54    -0.49 1.00
## gender_codeM                             -0.07      0.00    -0.08    -0.07 1.00
## gender_codeU                              0.40      0.01     0.37     0.43 1.00
## ethnic_codeHL                            -0.05      0.01    -0.07    -0.03 1.00
## ethnic_codeUN                            -0.02      0.00    -0.03    -0.01 1.00
## election_lbl11D08D2016                    0.54      0.00     0.53     0.54 1.00
## age_group25M44                            0.92      0.00     0.91     0.93 1.00
## age_group45M64                            1.75      0.00     1.74     1.76 1.00
## age_group65P                              1.56      0.00     1.56     1.57 1.00
## race_codeA:gender_codeM                  -0.04      0.01    -0.06    -0.02 1.00
## race_codeB:gender_codeM                  -0.42      0.00    -0.42    -0.41 1.00
## race_codeI:gender_codeM                  -0.13      0.01    -0.15    -0.10 1.00
## race_codeM:gender_codeM                   0.03      0.01    -0.00     0.05 1.00
## race_codeO:gender_codeM                  -0.16      0.01    -0.17    -0.14 1.00
## race_codeU:gender_codeM                  -0.07      0.01    -0.08    -0.06 1.00
## race_codeA:gender_codeU                   0.09      0.03     0.03     0.15 1.00
## race_codeB:gender_codeU                  -0.18      0.01    -0.20    -0.15 1.00
## race_codeI:gender_codeU                   0.15      0.06     0.04     0.27 1.00
## race_codeM:gender_codeU                   0.12      0.04     0.04     0.20 1.00
## race_codeO:gender_codeU                   0.16      0.04     0.08     0.23 1.00
## race_codeU:gender_codeU                  -0.48      0.01    -0.50    -0.46 1.00
## race_codeA:ethnic_codeHL                  0.25      0.05     0.16     0.35 1.00
## race_codeB:ethnic_codeHL                 -0.04      0.02    -0.07     0.00 1.00
## race_codeI:ethnic_codeHL                  0.45      0.05     0.35     0.55 1.00
## race_codeM:ethnic_codeHL                  0.13      0.02     0.10     0.17 1.00
## race_codeO:ethnic_codeHL                  0.21      0.01     0.19     0.23 1.00
## race_codeU:ethnic_codeHL                 -0.15      0.01    -0.18    -0.13 1.00
## race_codeA:ethnic_codeUN                  0.22      0.01     0.20     0.24 1.00
## race_codeB:ethnic_codeUN                 -0.04      0.00    -0.04    -0.03 1.00
## race_codeI:ethnic_codeUN                  0.06      0.02     0.03     0.10 1.00
## race_codeM:ethnic_codeUN                 -0.05      0.02    -0.08    -0.02 1.00
## race_codeO:ethnic_codeUN                 -0.06      0.01    -0.08    -0.04 1.00
## race_codeU:ethnic_codeUN                  0.39      0.01     0.36     0.41 1.00
## race_codeA:election_lbl11D08D2016        -0.19      0.01    -0.21    -0.17 1.00
## race_codeB:election_lbl11D08D2016         0.03      0.00     0.02     0.04 1.00
## race_codeI:election_lbl11D08D2016        -0.07      0.01    -0.10    -0.05 1.00
## race_codeM:election_lbl11D08D2016        -0.02      0.01    -0.05     0.00 1.00
## race_codeO:election_lbl11D08D2016        -0.08      0.01    -0.09    -0.06 1.00
## race_codeU:election_lbl11D08D2016        -0.10      0.01    -0.11    -0.09 1.00
## race_codeA:age_group25M44                -0.33      0.01    -0.35    -0.30 1.00
## race_codeB:age_group25M44                -0.09      0.00    -0.10    -0.09 1.00
## race_codeI:age_group25M44                -0.05      0.02    -0.09    -0.01 1.00
## race_codeM:age_group25M44                -0.35      0.02    -0.38    -0.32 1.00
## race_codeO:age_group25M44                -0.02      0.01    -0.04     0.00 1.00
## race_codeU:age_group25M44                 0.07      0.01     0.05     0.09 1.00
## race_codeA:age_group45M64                -0.35      0.01    -0.37    -0.32 1.00
## race_codeB:age_group45M64                 0.04      0.00     0.03     0.05 1.00
## race_codeI:age_group45M64                -0.12      0.02    -0.16    -0.08 1.00
## race_codeM:age_group45M64                -0.29      0.02    -0.33    -0.25 1.00
## race_codeO:age_group45M64                -0.02      0.01    -0.04     0.00 1.00
## race_codeU:age_group45M64                 0.09      0.01     0.07     0.11 1.00
## race_codeA:age_group65P                  -0.33      0.02    -0.37    -0.29 1.00
## race_codeB:age_group65P                   0.14      0.00     0.13     0.15 1.00
## race_codeI:age_group65P                   0.15      0.02     0.11     0.20 1.00
## race_codeM:age_group65P                  -0.07      0.03    -0.14    -0.00 1.00
## race_codeO:age_group65P                   0.18      0.01     0.15     0.21 1.00
## race_codeU:age_group65P                   0.19      0.01     0.16     0.21 1.00
## gender_codeM:ethnic_codeHL               -0.07      0.01    -0.09    -0.06 1.00
## gender_codeU:ethnic_codeHL                0.65      0.03     0.59     0.71 1.00
## gender_codeM:ethnic_codeUN                0.05      0.00     0.05     0.06 1.00
## gender_codeU:ethnic_codeUN               -0.12      0.01    -0.15    -0.09 1.00
## gender_codeM:election_lbl11D08D2016      -0.09      0.00    -0.10    -0.09 1.00
## gender_codeU:election_lbl11D08D2016      -0.10      0.01    -0.11    -0.08 1.00
## gender_codeM:age_group25M44              -0.01      0.00    -0.02    -0.01 1.00
## gender_codeU:age_group25M44              -0.29      0.01    -0.31    -0.27 1.00
## gender_codeM:age_group45M64               0.07      0.00     0.07     0.08 1.00
## gender_codeU:age_group45M64              -0.39      0.01    -0.41    -0.37 1.00
## gender_codeM:age_group65P                 0.18      0.00     0.17     0.19 1.00
## gender_codeU:age_group65P                -0.26      0.01    -0.29    -0.24 1.00
## ethnic_codeHL:election_lbl11D08D2016      0.03      0.01     0.01     0.04 1.00
## ethnic_codeUN:election_lbl11D08D2016      0.02      0.00     0.01     0.02 1.00
## ethnic_codeHL:age_group25M44             -0.21      0.01    -0.23    -0.19 1.00
## ethnic_codeUN:age_group25M44             -0.17      0.00    -0.17    -0.16 1.00
## ethnic_codeHL:age_group45M64             -0.41      0.01    -0.43    -0.39 1.00
## ethnic_codeUN:age_group45M64             -0.42      0.00    -0.43    -0.41 1.00
## ethnic_codeHL:age_group65P               -0.37      0.02    -0.40    -0.34 1.00
## ethnic_codeUN:age_group65P               -0.27      0.01    -0.28    -0.26 1.00
## election_lbl11D08D2016:age_group25M44     0.27      0.00     0.26     0.28 1.00
## election_lbl11D08D2016:age_group45M64     0.12      0.00     0.11     0.13 1.00
## election_lbl11D08D2016:age_group65P       0.01      0.00    -0.00     0.01 1.00
##                                       Bulk_ESS Tail_ESS
## Intercept                                  182      302
## race_codeA                                2647     2166
## race_codeB                                3691     3205
## race_codeI                                2086     2398
## race_codeM                                2830     2548
## race_codeO                                2236     2353
## race_codeU                                2285     2713
## gender_codeM                              4252     3223
## gender_codeU                              2715     2937
## ethnic_codeHL                             2774     2743
## ethnic_codeUN                             3509     2930
## election_lbl11D08D2016                    4029     2991
## age_group25M44                            3142     3421
## age_group45M64                            2946     3489
## age_group65P                              3109     3388
## race_codeA:gender_codeM                   5849     2864
## race_codeB:gender_codeM                   5541     2948
## race_codeI:gender_codeM                   7015     2809
## race_codeM:gender_codeM                   5416     2781
## race_codeO:gender_codeM                   5265     3235
## race_codeU:gender_codeM                   5940     3315
## race_codeA:gender_codeU                   5812     2842
## race_codeB:gender_codeU                   4597     2976
## race_codeI:gender_codeU                   6020     3116
## race_codeM:gender_codeU                   4802     3087
## race_codeO:gender_codeU                   5721     3050
## race_codeU:gender_codeU                   3609     3313
## race_codeA:ethnic_codeHL                  5682     2942
## race_codeB:ethnic_codeHL                  4734     2551
## race_codeI:ethnic_codeHL                  4026     2989
## race_codeM:ethnic_codeHL                  4068     3394
## race_codeO:ethnic_codeHL                  4675     2962
## race_codeU:ethnic_codeHL                  3396     2810
## race_codeA:ethnic_codeUN                  6636     2783
## race_codeB:ethnic_codeUN                  6215     3005
## race_codeI:ethnic_codeUN                  5511     2837
## race_codeM:ethnic_codeUN                  4086     3012
## race_codeO:ethnic_codeUN                  7273     3422
## race_codeU:ethnic_codeUN                  3434     3021
## race_codeA:election_lbl11D08D2016         5260     3257
## race_codeB:election_lbl11D08D2016         5600     3337
## race_codeI:election_lbl11D08D2016         6390     2805
## race_codeM:election_lbl11D08D2016         4317     2751
## race_codeO:election_lbl11D08D2016         5207     3315
## race_codeU:election_lbl11D08D2016         4643     2934
## race_codeA:age_group25M44                 3207     2962
## race_codeB:age_group25M44                 3869     3024
## race_codeI:age_group25M44                 2270     2689
## race_codeM:age_group25M44                 3724     2543
## race_codeO:age_group25M44                 2547     2889
## race_codeU:age_group25M44                 2438     2955
## race_codeA:age_group45M64                 3068     2744
## race_codeB:age_group45M64                 3404     2671
## race_codeI:age_group45M64                 2183     2653
## race_codeM:age_group45M64                 4096     3205
## race_codeO:age_group45M64                 2566     2984
## race_codeU:age_group45M64                 2430     3047
## race_codeA:age_group65P                   3281     3159
## race_codeB:age_group65P                   3888     3279
## race_codeI:age_group65P                   2409     2899
## race_codeM:age_group65P                   5098     2823
## race_codeO:age_group65P                   3156     3028
## race_codeU:age_group65P                   2311     2732
## gender_codeM:ethnic_codeHL                4954     3165
## gender_codeU:ethnic_codeHL                4615     2954
## gender_codeM:ethnic_codeUN                5920     2758
## gender_codeU:ethnic_codeUN                3630     3271
## gender_codeM:election_lbl11D08D2016       4695     3410
## gender_codeU:election_lbl11D08D2016       4688     3017
## gender_codeM:age_group25M44               4081     3413
## gender_codeU:age_group25M44               2409     2886
## gender_codeM:age_group45M64               4114     3353
## gender_codeU:age_group45M64               2379     2820
## gender_codeM:age_group65P                 4400     3435
## gender_codeU:age_group65P                 2659     2372
## ethnic_codeHL:election_lbl11D08D2016      5187     3003
## ethnic_codeUN:election_lbl11D08D2016      5750     3149
## ethnic_codeHL:age_group25M44              2861     2751
## ethnic_codeUN:age_group25M44              3723     3374
## ethnic_codeHL:age_group45M64              2859     3046
## ethnic_codeUN:age_group45M64              3573     3588
## ethnic_codeHL:age_group65P                3897     3318
## ethnic_codeUN:age_group65P                3904     3068
## election_lbl11D08D2016:age_group25M44     4279     3308
## election_lbl11D08D2016:age_group45M64     4143     2978
## election_lbl11D08D2016:age_group65P       4193     3245
## 
## Samples were drawn using sampling(NUTS). For each parameter, Bulk_ESS
## and Tail_ESS are effective sample size measures, and Rhat is the potential
## scale reduction factor on split chains (at convergence, Rhat = 1).

Model Traceplots

Traceplots and posterior densities for all fit coefficients in the model with prior variances of 0.1:

plot(var1,ask = FALSE)

Same output for model with prior variances of 0.001:

plot(var001, ask = FALSE)